﻿using UnityEngine;
using System.Collections;


/* Dieses Script wird für jedes Item das erstellt werden soll extra eingefügt und erstellt in einer
 * festlegbaren Zeit und Anzahl und Position die gewünschten PreFabs, zB Munition oder Zombies */



public class HealthSpawnScript : MonoBehaviour
{
	
	public float spawnTime;			// Zeit, die mindestens vergangen sein muss. Hier wird dann eine Randomzahl aus dedr Range addiert
	public float spawnTimeRange;	// Range, aus der eine zufällige Zahl addiert wird zur spawnTime. 0 für keine Range
	public GameObject spawnItem;	// Objekt welches spawnen soll (meist Prefab)
	public int spawnItemMax;		// Anzahl Objekte die maximal zeitgleich existieren dürfen. 0 für unendlich
	
	private float spawnTimeTemp;	// Zwischenvariable für berechnete spawnTime
	
	public GameObject player;
	
	
	
	
	// Use this for initialization
	void Start ()
	{
		// Wertekontrolle
		if (spawnTime < 1)
			spawnTime = 1;
		if (spawnItemMax < 1)
			spawnItemMax = 1;
		
		// erste spawnTime festlegen, dann immer nach spawn
		spawnTimeTemp = spawnTime + Random.Range (0,spawnTimeRange);
		print (spawnTimeTemp);
		
		
	}
	
	
	
	// Update is called once per frame
	void Update ()
	{
		
		spawnTimeTemp -= Time.deltaTime;
		
		// nach spawnTimeablauf prüfen ob noch Items erstellt werden dürfen, aber auf jeden Fall spawnTime neu erstellen
		if (spawnTimeTemp <= 0)	
		{
			spawnTimeTemp = spawnTime + Random.Range (0,spawnTimeRange);
			
			if (Camera.main.GetComponent<GameManagerScript>().healthCount < spawnItemMax)
			{
				Instantiate (spawnItem, player.transform.position, player.transform.rotation);
				//spawnItem.transform.position = new Vector3( (player.transform.position.x -2f), 2f , (player.transform.position.z -2f) )
				//Camera.main.GetComponent<GameManagerScript>().clockCount += 1;
				//
				Camera.main.GetComponent<GameManagerScript>().healthCount += 1;
			}
			
		}
		
	}
}
